package com.ai.module.order.domain.bo;

import lombok.Data;

import java.io.Serializable;

/**
 * @author: MrHe
 * @create: 2024-02-05 11:51
 * @description:
 **/

@Data
public class CallBackBo implements Serializable {

    /**
     *
     */
    private static final long serialVersionUID = -3279905156049535047L;


    /**
     * 通知Id
     */
    private String id;
    /**
     * 通知创建时间
     */
    private String create_time;
    /**
     * 通知类型
     * 支付成功：TRANSACTION.SUCCESS
     * 退款成功：REFUND.SUCCESS
     */
    private String resource_type;
    /**
     * 通知数据类型
     */
    private String event_type;
    /**
     * 回调摘要
     */
    private String summary;
    /**
     * 通知数据
     */
    private Resource resource;

    /**
     * 通知数据
     */
    @Data
    public static class Resource {
        /**
         * 对开启结果数据进行加密的加密算法，目前只支持AEAD_AES_256_GCM。
         */
        private String algorithm;
        /**
         * Base64编码后的开启/停用结果数据密文。
         */
        private String ciphertext;
        /**
         * 附加数据。
         */
        private String associated_data;
        /**
         * 加密使用的随机串。
         */
        private String nonce;
        /**
         * 原始回调类型。
         */
        private String original_type;
    }
}
